前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
  • React专栏

    • React组合式开发实战

      • 前端开发的四个时代
      • 企业管理系统的前世今生
      • 可视化页面搭建工具
      • 实战篇 01:开发前准备
      • 实战篇 02:项目脚手架
      • 实战篇 03:页面布局方案
      • 实战篇 04:权限管理机制
      • 实战篇 05:菜单匹配逻辑
      • 实战篇 06:消息通知设计
      • 实战篇 07:多语言支持
      • 继往开来:可视化页面搭建工具
    • React Hooks与Immutable实战

    • React SSR服务端渲染与同构实践

    • IM聊天系统前端开发实践

    • 微前端开发实战

    • React进阶实践

  • Vue专栏

  • 移动端专栏

  • Node专栏

  • 前端工程化专栏

  • 算法专栏

  • Typescript专栏

  • 其他专栏

完整面试题地址:
作者:程序员poetry
扫码关注作者公众号:「前端进阶之旅」 每天分享技术干货
前端进阶之旅公众号二维码

跟前面讲过的中间件、插件比起来,模块可以认为是一组来自第三方的自定义功能的整合,可以大大简化功能扩展和整合工作难度,社区存在大量优秀模块可以使用,我们不需要从零开发常用需求。如果说 Nuxt 是一台机器,那么中间件、插件都只能算是机器内的零件,而模块则是完成特定功能的一个完整部件。显然后者影响面更大,复用性更强,应该说是我们项目开发中的主要扩展手段。

本节将会包括如下内容:

  • 查找优秀模块;
  • 模块的使用指南;
  • 如何开发模块。

# 查找优秀模块

Nuxt 模块可以以 npm 包的形式发布,社区已经建立了一个相当繁荣的模块生态,我们可以通过下面链接访问: nuxt.com/modules

目前社区模块相当丰富:

img

# 模块分类

可以通过分类过滤模块版本和功能,目前Nuxt3已经是默认分类,另外还有Nuxt2+Bridge或Nuxt2这两种过滤:

img

还可以根据功能过滤需要的模块,例如下面我选择 UI 过滤出相关模块:

img

# 使用模块

使用模块分为两步:

  1. 安装模块;
  2. 引入、配置模块。

# 安装模块

首先安装模块,我们以 Color-Mode 模块为例演示:

sql
复制代码yarn add @nuxtjs/color-mode
@前端进阶之旅: 代码已经复制到剪贴板

# 引入和配置模块

其次引入模块,添加模块到 nuxt.config.ts 文件 modules 选项中,有两种添加方式:

  • 字符串:此方式仅引入,不配置。

    • arduino
      复制代码export default defineNuxtConfig({
        modules: ['@nuxtjs/color-mode']
      })
      
      @前端进阶之旅: 代码已经复制到剪贴板
  • 数组:此方式在引入模块同时添加行内配置。

    • lua
      复制代码export default defineNuxtConfig({
        modules: [["@nuxtjs/color-mode", { preference: "dark" }]],
      })
      
      @前端进阶之旅: 代码已经复制到剪贴板
  • 有的模块还可以通过独立配置项配置:

    • php
      复制代码export default defineNuxtConfig({
        modules
      fe
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
  • React专栏

    • React组合式开发实战

      • 前端开发的四个时代
      • 企业管理系统的前世今生
      • 可视化页面搭建工具
      • 实战篇 01:开发前准备
      • 实战篇 02:项目脚手架
      • 实战篇 03:页面布局方案
      • 实战篇 04:权限管理机制
      • 实战篇 05:菜单匹配逻辑
      • 实战篇 06:消息通知设计
      • 实战篇 07:多语言支持
      • 继往开来:可视化页面搭建工具
    • React Hooks与Immutable实战

    • React SSR服务端渲染与同构实践

    • IM聊天系统前端开发实践

    • 微前端开发实战

    • React进阶实践

  • Vue专栏

  • 移动端专栏

  • Node专栏

  • 前端工程化专栏

  • 算法专栏

  • Typescript专栏

  • 其他专栏